package cultu.community.service;

import java.util.Date;

import cultu.community.message.CommunityStats;
import cultu.community.message.OrderEvolutionStat;

/**
 * CommunityStatsService
 */
public interface CommunityStatsService
{
  /**
   * getCommunityStats
   * @return CommunityStats
   */
  CommunityStats getCommunityStats();

  /**
   * getOrdersEvolutionStat
   * @return OrderEvolutionStat
   */
  OrderEvolutionStat getOrdersEvolutionStat();

  /**
   * Gets the nb orders.
   *
   * @param pDate the date
   * @return the nb orders
   */
  int getNbOrders(Date pDate);

  /**
   * Gets the nb subscriptions.
   *
   * @param pDate the date
   * @return the nb subscriptions
   */
  int getNbSubscriptions(Date pDate);

  /**
   * Gets the nb products.
   *
   * @param pDate the date
   * @return the nb products
   */
  int getNbProducts(Date pDate);
}
